return true;
},
- openAppMenu: function() {
+ toggleAppMenu: function() {
let indicator = this.statusArea.appMenu;
if (!indicator) // appMenu not supported by current session mode
return;
let menu = indicator.menu;
- if (!indicator.actor.reactive || menu.isOpen)
+ if (!indicator.actor.reactive)
return;
- menu.open();
- menu.actor.navigate_focus(null, Gtk.DirectionType.TAB_FORWARD, false);
+ menu.toggle();
+ if (menu.isOpen)
+ menu.actor.navigate_focus(null, Gtk.DirectionType.TAB_FORWARD, false);
},
set boxOpacity(value) {
this.addKeybinding('open-application-menu',
new Gio.Settings({ schema: SHELL_KEYBINDINGS_SCHEMA }),
Meta.KeyBindingFlags.NONE,
- Shell.KeyBindingMode.NORMAL,
- Lang.bind(this, this._openAppMenu));
+ Shell.KeyBindingMode.NORMAL |
+ Shell.KeyBindingMode.TOPBAR_POPUP,
+ Lang.bind(this, this._toggleAppMenu));
Main.overview.connect('showing', Lang.bind(this, function() {
for (let i = 0; i < this._dimmedWindows.length; i++)
Main.ctrlAltTabManager.popup(backwards, binding.get_name(), binding.get_mask());
},
- _openAppMenu : function(display, screen, window, event, binding) {
- Main.panel.openAppMenu();
+ _toggleAppMenu : function(display, screen, window, event, binding) {
+ Main.panel.toggleAppMenu();
},
_showWorkspaceSwitcher : function(display, screen, window, binding) {